home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d18 / vis082s.arc / CONFIGRT.PAS < prev    next >
Pascal/Delphi Source File  |  1991-04-17  |  5KB  |  170 lines

  1. {$R-,S-,I-,D-,F+,V-,B-,N-,L+,O+ }
  2.  
  3. unit configrt;      (* Unit to read the config.bbs file *)
  4.  
  5. interface
  6.  
  7. uses gentypes;
  8.  
  9. type configsettype=record
  10.     versioncod:byte;
  11.     longnam,shortnam,sysopnam,forumdi,textdi,uploaddi,boarddi,
  12.     overlaypat,asciidownloa,textfiledi,doordi,
  13.     modemsetupst,modemhangupst,modemdialprefi,modemdialsuffi:lstr;
  14.     defbaudrat:word;
  15.     useco,anonymousleve,numwelcome,mintimeou,
  16.     sysopleve,defudleve,defudpoint,
  17.     normbotcolo,normtopcolo,outlockcolo,splitcolo,statlinecolo,
  18.     uploadfacto:integer;
  19.     privat,autologi,useconmod,escinmsg,bkspinmsg,requireform:boolean;
  20.     dotcha:char;
  21.     supportedrate,downloadrate:baudset;
  22.     availtim,unavailtim,xmodemopentim,xmodemclosetim:sstr;
  23.     usertim:array [1..100] of integer;
  24.     level2n,udlevel2n,udpoints2n,postleve:integer;
  25.     anonymousst,systempasswor:mstr;
  26.     remotedoor,allowdoor:boolean;
  27.     eventtim,eventbatc:sstr;
  28.     directvideomod,checksnowmod,hashaye:boolean;
  29.     fille:array [1..500] of byte;
  30.     matrixtyp:integer;
  31.     syste2,syste3,newuserpas,loginheade:mstr;
  32.     minpc,exemptpc,defleve,deffil,deffp,defgfil,defgp:integer;
  33.     defac:mstr;
  34.     staleve,stapoint,minudrati,minud:integer;
  35.     sysop:mstr;
  36.     normenu,whissl:boolean;
  37.     emchatp,edito,entercha,exitcha,bimodemdi:mstr;
  38.     timepercentbac:integer;
  39.     leechwee,chatmatr,feedmatr:boolean;
  40.     sysopi:mstr;
  41.     sysopo:mstr;
  42.     listleve,lastleve:integer;
  43.     comd1,comd2,comd3,comd4,comd5,comd6,comd7,comd8,prom,
  44.     desc1,desc2,desc3,desc4,desc5,desc6,desc7,desc8:mstr;
  45.     msg2nx:integer;
  46.     demons:boolean;
  47.     demoname:mstr;
  48.     leechud,leechk:integer;
  49.     answ1:mstr;
  50.     usetimebank:boolean;
  51.     totalallowed,levelusetb:integer;
  52.     userume:boolean;
  53.     leveltoaddrume:integer;
  54.     startpriv,stoppriv:sstr;
  55.     privlevel,minfreesp:integer;
  56.     useonelin:boolean;
  57.     netdir:lstr;
  58.     totform:integer;
  59.     inf:array [1..5] of lstr;
  60. (*   inf1,inf2,inf3,inf4,inf5:lstr; *)
  61.     iman:array [1..5] of boolean;
  62. (*   man2,man3,man4,man5,*)  usezip:boolean;
  63.     workdir:lstr;
  64.     netstart,netend:sstr;
  65.     famday:boolean;
  66.     netstc,netenc:sstr;
  67.     netpas,copre,cosuf:mstr;
  68.     dszlog:mstr;
  69.     logsize:integer;
  70.     defstacolor,definput,defpromp,defreg,defblowbor,defblowin,autouls:integer;
  71.     pointcomp:boolean;
  72.     pathfnme:lstr;
  73.     usems,hangonew:boolean;
  74.     Origin1,Origin2:Mstr;
  75.     HubBBS,MaximumDosShell:Boolean;
  76.     LockOutBaudPass:Mstr;
  77.     UsePrinterLog,SaveScreen:Boolean;
  78.     NumConfs:Integer;
  79.     Conf1,Conf2,Conf3,Conf4,Conf5:Mstr;
  80.     NetType1,NetType2,NetType3:Boolean;
  81.     NetType1Path:Mstr;
  82.     shownewprompts,multinodebbs:boolean;
  83.     nodenumber:integer;
  84.     gatepass,sys1pwpromp,sys2pwpromp,sys3pwpromp,matnamepromp,mathangup,
  85.     invalidpromp:mstr;
  86.     UseNUV,AutoKillNUV:BooLean;
  87.     newvotelvl,vonum,vonumno,volvl,voflvl,vofps:integer;
  88.     kkk1,kkk2,kkk3,kkk4,kkk5,kkk6,kkk7,kkk8:integer;
  89.     useansidetect,usegambling:boolean;
  90.     chance,gain,
  91.     numpoints,numthrows,convrate:integer;
  92.     allowtrading,allownuking:BooLeaN;
  93. end;   { Note this is for these things, I can't add more to the config! }
  94.  
  95.                                               { up majorily. }
  96.  
  97. Type ScreenType = array [0..3999] of Byte;
  98. var  ScreenAddr:ScreenType absolute $B800:$0000;
  99. var configset:configsettype;
  100.  
  101. procedure readconfig;
  102.  
  103. implementation
  104.  
  105. procedure readconfig;
  106. var q:file of configsettype;
  107.     i:integer;
  108.     ct:integer;
  109. begin
  110.   assign (q,'CONFIG.BBS');
  111.   reset (q);
  112.   i:=ioresult;
  113.     FillChar(ConfigSet,SizeOf(ConfigSet),0);
  114.     configset.sys1pwpromp:='[System/1] Password:';
  115.     configset.sys2pwpromp:='[System/2] Password:';
  116.     configset.sys3pwpromp:='[System/3] Password:';
  117.     configset.matnamepromp:='Enter your Handle or User Number:';
  118.     configset.MatHangup:='Disconnecting: TTY1';
  119.     configset.invalidpromp:='Invalid Choice!';
  120.         configset.UseNUV:=True;
  121.         configset.AutoKillNUV:=True;
  122.         configset.newvotelvl:=50;
  123.         configset.vonum:=5;
  124.         configset.vonumno:=10;
  125.         configset.volvl:=25;
  126.         configset.voflvl:=25;
  127.         configset.vofps:=5;
  128.         configset.kkk1:=1;
  129.         configset.kkk2:=9;
  130.         configset.kkk3:=3;
  131.         configset.kkk4:=13;
  132.         configset.kkk5:=12;
  133.         configset.kkk6:=14;
  134.         configset.kkk7:=4;
  135.         configset.kkk8:=5;
  136.         configset.useansidetect:=True;
  137.         configset.usegambling:=True;
  138.         configset.gain:=5;
  139.         configset.chance:=20;
  140.         configset.numpoints:=100;
  141.         configset.numthrows:=4;
  142.         configset.convrate:=10;
  143.         configset.allowtrading:=True;
  144.         configset.allownuking:=True;
  145.     if i=0
  146.         then begin
  147.             read (q,configset);
  148.          end
  149.     else
  150.       begin
  151.         writeln ('CONFIG.BBS not found!  Please configure ViSiON!');
  152.         halt (5)
  153.       end;
  154.   system.close (q);
  155.   if configset.versioncod<>thisversioncode then begin
  156.     writeln ('According to the version code in CONFIG.BBS, your system was set up using');
  157.     write ('ViSiON ');
  158.     if (configset.versioncod<1) or (configset.versioncod>thisversioncode)
  159.       then write ('1.0x or 2.0x')
  160.       else write (versioncodes[configset.versioncod]);
  161.     writeln ('.  Please run the appropriate conversion programs to');
  162.     writeln ('convert to this version, ',versionnum,'.');
  163.     halt (e_badconfig)
  164.   end
  165. end;
  166.  
  167. end.
  168.  
  169.  
  170.